Messaging system

ABSTRACT

A messaging system for provision of instant messaging for a user entity ( 1 ) is disclosed. The user entity of a type that is adapted for communication via a first communication environment ( 10 ) based on a first protocol. The messaging system comprises a controller entity ( 6 ) for managing instant messaging between user entities ( 1 - 4 ) in the messaging system. The controller entity is provided in a second communication environment ( 12 ) and operates in accordance with a second protocol. The controller entity comprises means for maintaining information regarding the status of said user entity.

FIELD OF THE INVENTION

The present invention relates to a messaging system, and in particularto provision of instant messaging services for users of a communicationsystem.

BACKGROUND OF THE INVENTION

A communication system is a facility that enables communication betweentwo or more entities such as user terminal equipment and/or other nodesassociated with the system. The communication may comprise, for example,communication of voice, electronic mail (email), text messages, data,multimedia and so on. The communication may be provided via fixed lineand/or wireless communication interfaces. An example of communicationsystems providing wireless communication is a public land mobile network(PLMN). An example of the fixed line systems is a public switchedtelephone network (PSTN).

A communication system typically operates in accordance with a givenstandard or specification which sets out what the various elements ofthe system are permitted to do and how that should be achieved. Forexample, the standard or specification may define if the user, or moreprecisely, user equipment or terminal is provided with a circuitswitched service or a packet switched service or both. Communicationprotocols and/or parameters which shall be used for the connection arealso typically defined. For example, the manner how communication shallbe implemented between the user equipment and the elements of thecommunication network is typically based on a predefined communicationprotocol. In other words, a specific set of “rules” on which thecommunication can be based on needs to be defined to enablecommunication by means of the communication system.

The communication systems may be provided with various differentfunctions. These functions can be divided in different categories. Acategory comprises functions that relate to the actual carrying of thecommunication in the system. Another category can be seen as beingformed by control or management functions such as the control of variousservices. The various functions of the communication systems may havebeen developed quite independently from each other and may use differentprotocols in different communication systems.

For example, in communication environments such as those based theInternet Protocol (IP) or the Session Initiation Protocol (SIP) or thecurrent third generation (3G) communication network architectures it isassumed that various servers are used for handling of the provision ofdifferent communication services for users. In such communicationsystems the communication connections may not be based on a “circuit”between the communicating nodes, but the messages may rather betransported as packets that are provide with an address. Hence the namepacket switched systems. The server entities and the user equipment maycommunicate with each other based on appropriate protocol providing sucha connectionless operation.

The internet protocol (IP) is a layer 3 protocol that underlies theapplication layer in a layered communication system function model. TheSession Initiation Protocol (SIP) in turn is an application-layercontrol protocol for creating, modifying and terminating sessions withone or more participants. A user connected to a SIP based communicationsystem may communicate with various entities of the communication systembased on standardised SIP messages.

The word Internet is typically understood as referring to the HypertextTransfer protocol (HTTP) based World Wide Web (WWW). The Internet hasalready proven to be a popular and wide spread data communication systemand is commonly used for provision of different services for the usersthereof. In the Internet services are typically provided by the socalled Internet Service Providers (ISPs). In addition to provision ofthe communication services itself (i.e. the possibility to communicatevia the system), content services such as different web sites are alsoprovided. The content can have any form, such as information, multimediaand so on.

Users of the Internet have been able to subscribe to the so called groupmessaging. The term group messaging refers to a feature in a messaginginfrastructure of a communication system that enables a user to joindiscrete messaging groups. A user may join a messaging group of his/herspersonal interest and communicate exclusively with the other members inthat group on a messaging channel. Any user who has successfully joineda messaging group may post messages to other members of the group byreferring to the group-enumerator. The members of the group also receivemessages that are posted by the other members of the group. Themessaging groups may be private (only selected members may join) orpublic (anybody may join). A user may belong to a number of messaginggroups.

At present the probably best known example of the group messagingsystems is the Internet Relay Chat (IRC). The IRC is a globally acceptedstandard for group messaging over the IP based Internet. The IRC isbelieved to have millions of users world-wide. A user connected to theInternet may communicate in real-time with a group of other usersconnected to the Internet via the IRC.

A user who wishes to join a messaging group needs to register e.g. hisname on an IRC server and join an IRC messaging channel provided by theIRC server. Any other user who joins the same IRC messaging channel onthis IRC server may then exchange messages with him. For example, ifAlice, Bob and Jack wish to chat in a group by means of their Internetenabled terminals, they need first to select an IRC server (e.g. withaddress irc.abc.net), then select a channel (e.g. #ourchat) and join thechannel using an appropriate IRC client software in their computerterminals. Once they all have done this any message posted on thechannel by one of them is relayed to the other two members of the group.Other examples of the group messaging services include services such asthe ICQ and Yahoo™ Messenger.

A feature of the group messaging systems is that they provide an instantmessaging session between the members of the group. That is, themessaging occurs in real-time. Consequently the instant messagingrequires that users who belong to the group and wish to attend themessaging session do it in real-time. If a member is not available ordoes not wish to answer, the other users do not necessarily get anyindication of this, and may wait for a response for a substantial lengthof time. At the present this problem is typically solved such that acentralised server (such as the IRC) manages the registrations and keepsthe individual members of the group informed about the availability ofthose members with whom said individual member may chat with. A problemusually exists with this in that the instant messaging is then onlyavailable for those users who communicate based on a protocol thatmandates communication with the centralised messaging server. Forexample, if the messaging service is provided by an IRC server, themessages need to be transported based on TCP/IP (transmission controlprotocol/IP).

EP publication 1122926 A2 describes a communications system including aplurality of communities that may be served by different serviceproviders. Text-based real-time messaging sessions may be establishedbetween users in said communities. A user in a first community may senda request indicating a desired text-based messaging session with asecond user in a second community. The second user is notified of therequest. A determination is made if the second user has accepted therequest to establish a text-based messaging session. If so, thetext-based messaging session is established between users in the firstand second communities. EP 1122926 A2 describes also an architecture forprovision of chat conferencing for users associated with serviceproviders that do not have chat applications, the user being enabled toestablish a chat connection via their service providers by using a webbrowser. However, although different groups may be served, EP 1122926 A2does not propose any solution for enabling instant messaging for usersof a communication system that is different to a communication systemthat is based on the TCP/IP.

The inventors have found that users of other communication systems thanthe Internet, such as those served by telephone network operators oroperators of higher or lower protocol layer networks might wish to usegroup messaging services. The inventors have also found that theexisting group messaging services are arranged to provide instant groupmessaging services only for those users who are communicating via aspecific communication system (that is, TCP/IP based systems). Inpractice that means that only those users who may communicate via theTCP may join a chat group managed by a IRC server.

If another protocol, for example the with the Session InitiationProtocol (SIP), is extended to accommodate groups for instant messaging,these messaging groups then require implementation of presence and groupmessaging servers in that protocol environment. That is, if instantgroup messaging is to be provided in a communication system thatoperates in accordance with the Session Initiation Protocol (SIP) thegroups would have to be maintained on a SIP server. Introduction ofadditional servers in the SIP communication environment, however, mightadd to the complexity and cost of the communication system. Interactionof the SIP messaging groups with other group messaging systems andpresence functions might also be difficult to implement. Also, theoperators of the SIP servers would have to implement features such assecurity functions and other administrative and management propertiesand so on.

SUMMARY OF THE INVENTION

Embodiments of the present invention aim to address one or several ofthe above problems.

According to one aspect of the present invention, there is provided amessaging system for provision of instant messaging for a user entityadapted for communication via a first communication environment based ona first protocol, the messaging system comprising a controller entityfor managing instant messaging between user entities in the messagingsystem, wherein said controller entity is provided in a secondcommunication environment, operates in accordance with a second protocoland comprises means for maintaining information regarding the status ofsaid user entity.

In a more specific form a server is arranged to operate in the firstcommunication environment for relaying communications between the userentity and the messaging controller entity. The server may be arrangedto adapt messages from the messaging controller entity so that themessages can be processed by the user entity and to adapt messages fromthe user entity so that the messages can be processed by the messagingcontroller entity. The server may be arranged to act as a client for themessaging controller entity. A user entity may join a messaging groupmaintained by the controller entity by signalling a message inaccordance with the first protocol to the server. Said server generatesand signals a request to the controller entity based on said message.

An executable set of instructions may be provided for controlling ofcommunications between the controller entity and the user entity.

The controller entity nay be arranged to provide the user entity withinformation regarding the presence status of other user entities thathave joined a messaging group maintained by the controller entity.

According to another aspect of the present invention there is provided amessaging server for provision of instant messaging for first userentities adapted for communication via a first communication environmentin accordance with a first protocol and also for second user entitiesadapted for communication via a second communication environment inaccordance with a second protocol, said messaging server being providedin said second environment and comprising means for maintaininginformation regarding the status of the first user entities.

According to another aspect of the present invention there is provided amethod in a communication system for provision of instant messagingbetween user entities, at least one of the user entities communicatingvia a first communication environment based on a first protocol, themethod comprising: maintaining in a controller entity informationregarding the status of said at least one user entity, said controllerentity being provided in a second communication environment operating inaccordance with a second protocol; signalling from the controller entitya message to the at least one user entity; and receiving the message inthe at least one user entity, said message being signalled via the firstcommunication environment.

In a more specific form a user entity may request for a membership in amessaging group managed by the controller entity by sending a request toa server provided in the first communication environment. Statusinformation regarding said at least one user may be signalled from thecontroller entity. A notification may then be given to a user of a userequipment.

The embodiments of the invention may enabled a feasible way to movepresence and group messaging functions out from one network domain. Forexample, it should be easier to implement group messaging for groups whosubscribe to a communication network that itself does not provide groupmessaging facilities. That is, the group messaging services may beprovided by means of a messaging server that is arranged externally fromsaid communication network. Group messaging services may be provided forusers of other communication systems by means of e.g. a group messagingentity implemented in the Internet. The embodiments may also enablegroup messaging for users who are communication via different types ofuser terminals and communication systems.

The implementation of the proposed system does not require anysubstantial investment since it is possible to utilise already existinggroup messaging facilities, e.g. IRC servers implemented in theInternet. The operators of the other networks may utilise theadministrative functions, security functions, enhanced features and soon that are already implemented in the existing group messagingentities.

BRIEF DESCRIPTION OF DRAWINGS

For better understanding of the present invention, reference will now bemade by way of example to the accompanying drawings in which:

FIG. 1 shows one embodiment of the present invention;

FIG. 2 shows a plurality of server entities that may co-operate toprovide users with group messaging services;

FIG. 3 is a signalling flow chart in accordance with an embodiment;

FIG. 4 is a flowchart illustrating the operation of one embodiment ofthe present invention; and

FIG. 5 shows a further embodiment.

DESCRIPTION OF PREFERRED EMBODIMENTS OF THE INVENTION

Reference is made to FIG. 1 which shows a messaging group consisting ofthree users 1 to 3. The users are connected via respective wirelessinterfaces to a first communication system 10. The first communicationsystem 10 provides communication in a session initiation protocol (SIP)environment. That is, each of the users 1 to 3 subscribes to acommunication system that is based on the SIP protocol. A SIP userequipment can be seen as equipment that can interpret and generate SIPmessages, and it includes functions required for handling the SIPmessaging referred to as a SIP user agent (UA).

The elements required for the wireless connection between the networkapparatus of the first communication system 10 and the user equipment 1to 3 and the user equipment as such do not form an essential element ofhe present invention, and therefore these are not shown or described inany greater detail. It is sufficient to note that mobile stations maycommunicate with base stations of a cellular communication system over awireless interface. The mobile stations may be provided with userinterface means such as a display and input or control buttons, althoughthis is not always necessary. A mobile station may comprise alsoprocessor and data storage means for enabling use thereof for messagingoperations.

FIG. 1 shows also a second communication system 12. The secondcommunication system operates in accordance with a second protocol. Moreparticularly, the second communication system operates in the InternetProtocol (IP) environment.

A group messaging controller entity 6 is shown to be provided in the IPenvironment 12. In a preferred embodiment the group messaging controllerentity 6 comprises an Internet Relay Chat (IRC) server. IRC servers havebeen conventionally used for provision of group messaging channels foruser of Internet enabled terminals such as the personal computer (PC)terminal 4 of FIG. 1.

The inventors have found that it is possible to utilise a server that isoriginally intended for use in a different communication environments,such the IRC server 6 implemented in the IP environment 12, forprovision of presence and group messaging functions in a communicationsystem that is based on another protocol, for example the SIP.

The group messaging and presence functions may be enabled for user 1 to3 in the SIP environment 10 by using the IRC server 6 of the IPenvironment 12 at the back-end. Instant group messaging may be providedfor the SIP users 1 to 3 by joining the SIP users on a specific usergroup. All messages within the group may then be relayed to the SIP usergroup by posting them on a corresponding IRC channel. That is, the SIPusers 1 to 3 may join a server-specific (internally defined) channelprovided by the IRC server 6 whenever they signal a request to registeronto the channel. The SIP users can also be removed from the channelprovided by the IRC server 6 when they de-register.

The IRC server 6 functions as a sort of a presence storage that keepsthe state of the user registrations in the database 9 thereof. Inaccordance with the principles of the present invention the status isinformation is also kept for users 1 to 3 who belong to a differentcommunication system. That is, the IRC server 6 of FIG. 1 providespresence information associated with the registered users regardless thecommunication system they subscribe to.

The communication between a SIP server and the IRC server may be handledby an appropriate client entity. FIGS. 2 and 3 show an embodimentwherein such as a client entity 7 is provided in association with theSIP server entities 5.

The client entity 7 may comprise an executable set of instructions suchas a script or executable program code adapted for provision of instantmessaging services for the SIP users. When a SIP server 5 receives therequests from a user equipment the SIP server may execute the scriptthereby enabling communication between the SIP user 1 and the IRC server6. The script may perform any adaptation of the signalling between theIRC 6 and the user equipment 1 that is required so that the SIP and IRCentities may communicate with each other.

For example, a particular script that interfaces the SIP communicationenvironment to the IP communication environment thereby enablingcommunication between the SIP users 1 to 3 and the IRC server 6 may beinvoked by an event wherein a user subscribes to a channel on the IRCserver 6. The script may be, for example, based on any of the following:a CGI (Common Gateway Interface, a WWW based technology); a PHP(Hypertext Preprocessor, a WWW scripting language); a PERL (PracticalExtraction and Reporting Language, a Script programming language).

Adaptation of the messages at the SIP server 5 may be required e.g.since the messages are sent on the IRC channel in accordance with theIRC protocol. The IRC protocol messages are not necessarily understoodby a SIP enabled equipment and vice versa. Thus, since the IRC server isnot necessarily arranged to interpret or generate SIP messages, themessages from the IRC server 6 may need to be converted to a format thatthe user equipment 1 may understand.

In the example described in more detail with reference to FIG. 3, theclient entity 7 is arranged to compile SIP messages from the protocoldata packets received from the IRC server 6. In the other direction theclient entity may generate protocol data packets from the SIP messagesreceived from the user equipment 1.

The IRC back-end server 6 can be implemented invisibly within thesystem, that is the SIP users 1 to 3 do not necessarily know that theyare in communication with a server of another system. Instead, the SIPusers see the SIP server 5 as an entity that provides the instant groupmessaging services. For example, a SIP message to a SIP destination<sip:hobby-football@service.provider.com> is relayed transparently to anIRC channel called #hobby-football.

The IRC server 6 may see the SIP server 5 as a normal client i.e. as anymember who wishes to join an instant messaging channel maintained by theIRC server. The IRC server will relay any messages coming into thechannel to the client as it were any other member of the channel. A SIPserver 5 may have several IRC clients 7 running at the same time, onefor each SIP user. The IRC server 6 would see these user as IRC clientsresiding in one server or IP address.

The IRC channels can be joined by the SIP users and also by the directIRC users. Thus the channels can provide a gateway between the SIP andIRC users. It shall be appreciated that in the SIP environment the“channel” is sometimes referred to by the term “group”, both of theseterms referring to a similar functionality.

Instant messaging requires information regarding the presence status ofa member of the group. In the FIG. 2 embodiment the IRC server 6 isarranged to maintain in a memory means 9 thereof information regardingthe presence status of the users subscribing to the group messagingservices. The memory means may comprise any appropriate means forstoring status information, such as a volatile or a non-volatile memorychip, disk or similar. A set of executable instructions such as anappropriate script may be used for controlling the presencefunctionality of the IRC server 6 in a per se known manner.

During the operation the IRC server 6 may be provided with a request toprovide a listing of all active channel participants. The listings maybe conveyed on the channel the users have joined. When a user leaves thechannel, all other members of that channel may be sent a notificationregarding the change of the status of the user.

This information may be translated into an appropriate message format atthe SIP server 5 and then forwarded to user equipment belonging to saidchannel. Thus information about the presence status of the other channelparticipants is provided for each member of the group. Other statechanges can also be reporting accordingly. That is, the presencemechanism of the IRC server can be used to communicate any informationthat associates with the status of the group.

A more detailed example of the instant messaging in accordance with thepresent invention is now explained with reference to the signallingchart of FIG. 3 and also flowchart of FIG. 4. As shown in FIG. 3, a SIPuser equipment (user agent) 1 may use standard SIP functions to join IRCchannels provided by an IRC server 6 and for communication on saidchannels. The SIP user equipment 1 is arranged to send SIPSUBSCRIBE/INVITE requests to a SIP server 5 and to receive standard SIPNOTIFY or MESSAGE messages from the SIP server. These SIP messages canbe employed in the provision of various features of the instant groupmessaging services provided by the IRC server 6 for the SIP userequipment 1.

The IRC server 6 is shown to communicate by means of TCP (TransmissionControl Protocol). Communication between the SIP user equipment 1 andthe SIP server 5 is shown to be based on UDP (User Datagram protocol). Adifference between these two protocols is that in the TCP all packetscarrying the messages are acknowledged by the recipient entity and themessages are carried in a specific order whereas in the UDP the packetsare not acknowledged and an orderly delivery is not guaranteed. Instead,the SIP itself provides a mechanism for acknowledging the receipt ofmessages and for guaranteeing the orderly delivery of the messages.Therefore an adaptation between the TCP and UDP and also between SIP andIRC protocols is required in the SIP entity.

In step A a user ‘Aki’ of the user equipment 1 wishes to join a group bysending an SIP ‘INVITE’ to the SIP server 5. An IRC client 7 provided inthe SIP server 5 then communicates with the IRC server 6 in order tojoin the user ‘Aki’ on the requested channel. A ‘join’ request is sendto the IRC 6. The ‘join’ request is based on information contained inthe INVITE request from the user equipment 1, said request identifyingthe user ‘Aki’ and the requested channel ‘Example’. Any responses fromthe IRC server 6 are relayed to the SIP group messaging server 5. Basedon the response the SIP server 5 may send, for example, asuccess/failure SIP message to Aki's user equipment and so on.

After the communication between the SIP server 5 and the IRC server 6 iscompleted successfully, an ‘OK’ message is returned to Aki's userequipment. As indicated by step B, the user equipment 1 may now sendmessages to the group via the SIP server 5 and by means of the IRCclient 7. Responses (i.e. messages from other users) may be transportedto the registered user e.g. by means of SIP ‘MESSAGE’ or ‘NOTIFY’messages.

At the IRC server an IRC presence script can be used to log the user onto the IRC server with the user nickname ‘Aki’ set to the SIP URL of theuser. After the script has performed a ‘/join #<group-name>’ operationany messages posted on the group are relayed to ‘Aki’ through callbackfeatures to the client script 7 at the SIP server 5. The messages arethen delivered through a SIP ‘MESSAGE’ (for messages) and ‘NOTIFY’ (forpresence notifications) to the user equipment 1.

The user of the user equipment 1 may also send an enquiry regarding thepresence status of the other members of the group. In step C this isdone by means of a SIP ‘SUBSCRIBE’ request. More particularly, the usermay use his SIP enabled terminal to subscribe to an “IRC presencescript” on the SIP server 5, pointing to a particular group name. The‘SUBCRIBE’ specifies an event to which the message is for. The SIPserver 5 may bind the requested event to the appropriate script which isthen executed to provide the requested service, which is this case wasthe “IRC presence script”.

Responses (i.e. names of other users who are present at the moment) maythen be transported to the user e.g. by means of SIP ‘NOTIFY’ messages.The SIP NOTIFY messages may not carry documents which are specified byother protocols. The SIP server, and more particularly, the scriptrunning the service in the SIP server translates the IRC messages e.g.into a corresponding presence document. Therefore, if the SIP server 5is adapted to operate in accordance with the presence specifications, itwill then send only presence updates which the SIP enabled userequipment understands. So the user equipment would see the receiveddocument as an ordinary presence application. A more detaileddescription of the SIP presence service provided by SIP server entitiescan be found from 3^(rd) Generation Partnership Project (3GPP) Technicalspecification 3GPP TS 22.141 ‘Presence Service’ (version 1.0.0.2001-06).

The users of the SIP communication system may thus form a SIP messaginggroup by the IRC server 6. In addition to transportation of the actualmessages, any other events pertaining to this IRC channel, such asinclusion of a new member, exclusion of a registered member may also berelayed to the members through standard SIP messages, for examplethrough the SIP ‘NOTIFY’ messages. This is illustrated in step D whereina new member joins the group.

Step E illustrates the relaying of a message from another member of thegroup to user 1.

The user equipment may be arranged to give noticeable indications to theuser thereof based on the messages received from the SIP server. Forexample, the user equipment may display to the user a green icon on aperson who is in an active state, and a red icon when that person isinactive.

FIG. 3 shows use of SIP INVITE messages for joining a group and SIPSUBSCRIBE for obtaining presence information. It is also possible tojoin the chat sessions (streams of messages from/to the channel ormessaging group) by sending a SIP SUBSCRIBE message. Requests forinformation regarding the presence status of group participants (joins,leaves, kicks or other state changes of a channel) may be requested bymeans of a SIP INVITE message. Users may also be enabled to use eitherSIP INVITE or SIP SUBSCRIBE for both of these operations.

As shown in FIG. 2, one IRC based group messaging/presence server entity6 may be shared by a plurality of SIP servers 5.

FIG. 5 shows a further embodiment wherein the functions of a SIP serverentity 5 and an IRC server entity 6 are implemented by means of asintegrated unit 56. This embodiment does not necessarily require use ofclients or other similar adaptation means between the SIP server and IRCserver entities. Instead, the functions thereof can be integrated suchthat the messages input to unit 56 and output from unit 56 are alreadyof format that can be carried in the SIP communication environment andinterpreted by the SIP user equipment 1. FIG. 5 shows also a SIP proxyserver 5″ via which the SIP messages between the unit 56 and the userequipment 1 may be carried in a per se known manner.

It shall be appreciated that users of the instant messaging service donot necessarily need to be human users. For example, entities of acommunication system or entities connected to a communication system mayexchange automatically e.g. control messages via an instant messagingsystem that is arranged to operate in accordance with the abovediscussed principles.

In the above discussed embodiments the presence and group messaging aremoved out of a pure SIP domain. It shall be appreciated that the SIPusers may also use other instant messaging IM clients that thosedescribed above. For example, ICQ, AOL an so on may be used forcommunication with user groups. What is required is that such a clienthas a gateway to the IRC in order to send/receive messages from the IRCchannels. In addition, other messaging system than the described IRC canbe used for the provision of the chat channels. For example, any WWWbased messaging system such as those available under trade names ICQ™,AIM™ or Yahoo Messenger™ can be used for the provision of the messagingcontroller entity for instant messaging.

A gateway entity may be provided for the interface between communicationsystems operating in accordance with different protocols. For example, agateway may be provided with a SIP server and the IRC server. However,this is not necessary e.g. when the SIP server acts as an IRC clientthus providing means for interfacing the two systems.

If somebody using e.g. a WWW based messaging system wishes tocommunicate with a SIP user, or inter-operate with other communicationenvironments, it is useful to have the messaging function implementedexternally from the communication network the SIP user or user of othercommunication environment subscribes to. This enables also users ofdifferent types of user terminal equipment to participate a messaginggroup. For example, the PC terminal 4 in FIG. 1 may join the groupcreated for users 1 to 3 of the SIP network.

The implementation of the above discussed group messaging method issubstantially lightweight and convenient since e.g. the IRC servers arealready scattered all over the Internet. Therefore a communicationsystem that operates in a different protocol environment, such as inaccordance with the SIP, may be extended to provide the users thereofwith group messaging services without a need to provide thecommunication system with additional servers. The existing IRC servershave also proven to be robust and flexible. The operators of the SIPnetworks may utilise the administrative functionality, security,enhanced features and so on that are already implemented in an IRC. Thatis, features provided by the IRC based systems can be re-used in the SIPbased system e.g. for channel set-up, administration, message delivery,and so on.

It shall be appreciated that whilst embodiments of the present inventionhave been described in relation to SIP enabled mobile stations and SIPand IP protocol environments, embodiments of the present invention areapplicable to any other suitable type of user equipment and protocols.

It shall also be appreciated that instant messaging can be providedbetween two user entities only.

It is also noted herein that while the above describes exemplifyingembodiments of the invention, there are several variations andmodifications which may be made to the disclosed solution withoutdeparting from the scope of the present invention as defined in theappended claims.

1-22. (Cancelled).
 23. A messaging system for provision of instantmessaging for a user entity adapted for communication via a firstcommunication environment based on a first protocol, the messagingsystem comprising a controller entity for managing instant messagingbetween user entities in the messaging system, wherein said controllerentity is provided in a second communication environment, operates inaccordance with a second protocol and comprises means for maintaininginformation regarding the status of said user entity, and a serverarranged to operate in the first communication environment for relayingcommunications between the user entity and the messaging controllerentity.
 24. A system as claimed in claim 23, wherein the server isarranged to adapt messages from the messaging controller entity so thatthe messages can be processed by the user entity and to adapt messagesfrom the user entity so that the messages can be processed by themessaging controller entity.
 25. A system as claimed in claim 23,wherein the server is arranged to act as a client for the messagingcontroller entity.
 26. A system as claimed in claim 23, wherein anexecutable set of instructions is provided for controlling ofcommunications between the controller entity and the user entity.
 27. Asystem as claimed in claim 23, wherein the controller entity is arrangedto provide the user entity with information regarding the presencestatus of other user entities that have joined a messaging groupmaintained by the controller entity.
 28. A system as claimed in claim23, wherein a user entity is enabled to join a messaging groupmaintained by the controller entity by signalling a message inaccordance with the first protocol to the server, and wherein saidserver generates and signals a request to the controller entity based onsaid message.
 29. A system as claimed in claim 23, wherein in said firstcommunication environment communication messages transmitted to and fromthe user equipment are acknowledged by the recipient thereof and in saidsecond communication environment the communication is carried by meansof data stream, wherein each data packet in the data stream isacknowledged by the recipient thereof.
 30. A system as claimed in claim29, wherein in said first communication environment the communication iscarried by mean of User Datagram Protocol (UDP) data packets and in saidsecond communication environment the communication is carried by meansof Transmission Control Protocol (TCP) data packets.
 31. A system asclaimed in claim 23, wherein the controller entity is arranged to sendnotifications to users that have joined a messaging group maintained bythe group messaging entity.
 32. A system as claimed in claim 31, whereina notification comprises information regarding at least one of thefollowing events: inclusion of a new member in a messaging group;exclusion of a member from a messaging group; a new message; status of amember of a group.
 33. A system as claimed in claim 23, wherein thecontroller entity and the server are provided by means of a singlenetwork element.
 34. A system as claimed in claim 23, wherein the firstprotocol comprises the Session Initiation Protocol (SIP).
 35. A systemas claimed in claim 23, wherein the second protocol comprises theInternet Relay Chat (IRC) protocol.
 36. A system as claimed in claim 23,wherein the controller entity provides a gateway between user entitiescommunication via the first communication environment and user entitiescommunicating via another communication environment.
 37. A system asclaimed in claim 23, wherein the controller entity comprises a InternetRelay Chat (IRC) server.
 38. A system as claimed in claim 23, wherein atleast one of the user entities comprises a user equipment arranged forcommunication via wireless interface.
 39. A system as claimed in claim23, wherein the user entity comprises an element implemented within thefirst communication environment.
 40. A messaging server for provision ofinstant messaging for first user entities adapted for communication viaa first communication environment in accordance with a first protocoland also for second user entities adapted for communication via a secondcommunication environment in accordance with a second protocol, saidmessaging server being provided in said second environment andcomprising means for maintaining information regarding the status of thefirst user entities.
 41. A method in a communication system forprovision of instant messaging between user entities, at least one ofthe user entities communicating via a first communication environmentbased on a first protocol, the method comprising: maintaining in acontroller entity information regarding the status of said at least oneuser entity, said controller entity being provided in a secondcommunication environment operating in accordance with a secondprotocol; signalling from the controller entity a message to the atleast one user entity; relaying the message by a server arranged tooperate in the first communication environment; and receiving themessage in the at least one user entity, said message being signaled viathe first communication environment.
 42. A method as claimed in claim41, wherein a user entity requests for a membership in a messaging groupmanaged by the controller entity by sending a request to a serverprovided in the first communication environment.
 43. A method as claimedin claim 41, wherein status information regarding said at least one useris signaled from the controller entity.
 44. A method as claimed in claim43, wherein a notification is given to a user of a user equipmentreceiving the status information.